.\"   $Id: bddToAblCct.3,v 1.1 2002/04/03 13:13:26 ludo Exp $
.\" @(#)bddToAblCct.2 7.01 92/08/22 ; Labo masi cao-vlsi; Author : Luc Burgun
.TH BDDTOABLCCT 3 "October 1, 1997" "ASIM/LIP6" "BDD functions"
.so man1/alc_origin.1
.SH NAME
\fBbddToAblCct\fP \- converts a BDD into an ABL within a circuit 
.SH SYNOPSIS
.nf
#include "logmmm.h"
chain_list *bddToAblCct(pC,pBdd)
pCircuit pC;
pNode pBdd;
.fi
.SH PARAMETERS
.TP 20
\fIpC\fP
Circuit in which is made the conversion
.TP 20
\fIpBdd\fP
BDD to convert
.SH DESCRIPTION
\fBbddToAblCct()\fP converts \fIpBdd\fP into an expression. This function returns a result that depends from the ordering of the primary input. This function provides the basic method for the logical optimizer called in BOP.
.SH EXAMPLE
.nf
#include "mutnnn.h"		/* mbk utilities */
#include "logmmm.h"
chain_list *expr;
pNode res;
pCircuit pC;

initializeBdd(SMALL_BDD);
pC = initializeCct("circuit 1",10,10);

addInputCct(pC,"a");
addInputCct(pC,"b");

	/* let's suppose that res = (OR a b) */

expr = bddToAblCct(pC,applyBinBdd(OR,
                    createNodeTermBdd(searchInputCct(pC,"a"))),
                    createNodeTermBdd(searchInputCct(pC,"b")));
displayExpr(expr);

/* it will display 
(OR a b)
*/

destroyCct(pC);
destroyBdd(1);
.fi
.SH SEE ALSO
.BR log (1),
.BR bdd (1),
.BR abl (1),
.BR ablToBddCct (3).

.so man1/alc_bug_report.1

